Web sites hosted by web servers are commonly used to provide users with information and/or to receive input from users. In order to access a web site, a client computer generally transmits a connection establishment request carrying a destination address of the web site to the web server. The web server responds according to predetermined rules, referred to as protocols, so as to form a connection and provide the requested information.
Some widely used web sites are hosted by a plurality of web servers located at different locations, in order to provide fast communication to client computers located in different areas. Each web server generally has a separate IP address.
In some cases, the owner of a web site hosted by a plurality of web servers manages a global server load balancer (GSLB), which determines, for each client request, to which server the client request is to be forwarded. All client requests are initially transmitted to the GSLB, which forwards the packets to the selected servers. GSLBs are described, for example, in “Content Delivery for Distributed Sites”, downloaded from /www.webtechniques.com/archives/2000/12/conn, on Oct. 30, 2001, the disclosure of which is incorporated herein by reference. Some global server load balancers (GSLBs) select the web server to service a client based on a location of the client approximated from the IP address of the client. Known GSLBs also periodically determine the load on the web servers and accordingly select a server to service the client.
The “Distributed Director 2500” series of Cisco, as described in white papers downloaded from /www.cisco.com/univercd/cc/td/doc/product/iaabu/distdir/dd2501/ovr.htm, on Oct. 30, 2001, the disclosure of which documents is incorporated herein by reference, distributes Internet services among topologically dispersed servers. The distributed director queries routers near each of the servers for information on the route from the router to the client. Responsive to the queries from the distributed director, each of the routers determines one or more parameters of the path from the router to the client and provides the parameter values to the director. The distributed director collects the information from the routers and selects a server to handle the client accordingly. The use of the distributed director increases the response time to client requests, as the client must wait for the gathering of the data on the route between the routers and the client. Also, the queries from the routers may be blocked out by a firewall protecting the client.
In order to monitor the performance of web servers, there are service providers, such as Mercury.com, which perform communication tests to web servers from a plurality of test units dispersed throughout the Internet. The service provider generates reports on the performance of the web servers and provides the report to a system manager of the web servers. The system manager may use the reports to determine, for example, whether additional web servers are required and/or if there are communication failures that require repair.